package xcmg.syn.feign;

import com.github.pagehelper.PageInfo;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import xcmg.syn.service.vo.mmpart.GpsPartVO;
import xcmg.syn.service.vo.mmpart.MmPartSupplierVO;
import xcmg.syn.service.vo.order.MmJisoPoHeadVO;
import xcmg.syn.service.vo.order.MmSwOrderLabelVO;
import xcmg.syn.service.vo.order.MmSwOrderVO;
import xcmg.syn.service.vo.supplier.MmSupplierVO;
import yb.ecp.fast.infra.infra.ActionResult;
import yb.ecp.fast.infra.infra.SearchCommonVO;

import java.util.List;

@EnableFeignClients
@FeignClient("${gc-syn-server:gc-syn-server}")
public interface SynClient {
    @RequestMapping(value = "/supplier/list", method = RequestMethod.POST)
    ActionResult<PageInfo<MmSupplierVO>> list(@RequestBody SearchCommonVO<MmSupplierVO> condition);

    @RequestMapping(value = "/mmpart/list", method = RequestMethod.POST)
    ActionResult<List<GpsPartVO>> listPart(@RequestBody GpsPartVO condition);

    @RequestMapping(value = "/mmPartSupplier/list", method = RequestMethod.POST)
    ActionResult<List<MmPartSupplierVO>> listPartSupplier(@RequestBody MmPartSupplierVO condition);

    @RequestMapping(value = "/mmSwOrder/list", method = RequestMethod.POST)
    ActionResult<List<MmSwOrderVO>> listMmSwOrderVO(@RequestBody MmSwOrderVO condition);

    @RequestMapping(value = "/mmSwOrder/queryLabelList", method = RequestMethod.POST)
    ActionResult<List<MmSwOrderLabelVO>> queryLabelList(@RequestBody MmSwOrderLabelVO condition);

    @RequestMapping(value = "/mmJisoPoHead/listMmJisoPoHead", method = RequestMethod.POST)
    ActionResult<List<MmJisoPoHeadVO>> listMmJisoPoHead(@RequestBody MmJisoPoHeadVO condition);

}
